:host {
  /* Primary theme colors */
  --meh-accent: var(--meh-default-accent, #2196f3);
  --meh-background: var(--meh-default-background, #fefefe);
  --meh-foreground: var(--meh-default-foreground, #333);

  /* Spacing and layout */
  --meh-spacing: var(--meh-default-spacing, 1em);
  --meh-border-radius: var(--meh-default-border-radius, 3px);

  /* Status colors */
  --meh-success: var(--meh-default-success, #4caf50);
  --meh-error: var(--meh-default-error, #d32f2f);

  /* Derived Colors */
  --meh-link-color: var(--meh-default-link-color, var(--meh-accent));
  --meh-link-deco-color: var(--meh-default-link-deco-color, var(--meh-link-color));
  --meh-border-color: var(--meh-default-border-color, color-mix(in srgb, var(--meh-foreground), transparent 90%));
  --meh-button-background: var(--meh-default-button-background, color-mix(in srgb, var(--meh-accent), var(--meh-background) 80%));

  display: block;

  * {
    box-sizing: border-box;
  }

}
